home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1993…ch: Other People's Memory / ADC Developer CD (1993-03) (''Other People's Memory'')_iso / Dev.CD Mar 93.iso / Development Platforms / CSMP Digests / csmp-v1-049.txt < prev    next >
Encoding:
Text File  |  1992-11-18  |  42.4 KB  |  1,165 lines  |  [TEXT/MPS ]

  1. C.S.M.P. Digest             Mon, 13 Apr 92       Volume 1 : Issue 49
  2.  
  3. Today's Topics:
  4.  
  5.     calling XFCNs from an XFCN
  6.     Smalltalk/V or C as ideal development tool?
  7.     ASP, the Server Side
  8.     Shift Key Woes
  9.     Think-C Floating point support - Why so slow??
  10.     OpenAda from Meridian, got any comment?
  11.     THINK C 5.01 and QUADRA... )-:
  12.     Oh no, more woes!
  13.     Always having another rsrc file open (was Re: Preference Files/Folders: How to do under 6.x?)
  14.     Mac Assembly Hacking
  15.     Wanted: AppleTalk programming examples
  16.  
  17.  
  18. The Comp.Sys.Mac.Programmer Digest is moderated by Michael A. Kelly.
  19.  
  20. These digests are available (by using FTP, account anonymous, your email
  21. address as password) in the pub/mac/csmp-digest directory on ftp.cs.uoregon.
  22. edu.  This is also the home of the comp.sys.mac.programmer Frequently Asked
  23. Questions list.  The last several issues of the digest are available from
  24. sumex-aim.stanford.edu as well.
  25.  
  26. These digests are also available via email.  Just send a note saying that you
  27. want to be on the digest mailing list to mkelly@cs.uoregon.edu, and you will
  28. automatically receive each new digest as it is created.
  29.  
  30. The articles in these digests are taken directly from comp.sys.mac.programmer.
  31. They are not edited; all articles included in this digest are in their original
  32. posted form.  The only articles that are -not- included in these digests are
  33. those which didn't receive any replies (except those that give information
  34. rather than ask a question).  All replies to each article are concatenated
  35. onto the original article in the order in which they were received.  Article
  36. threads are not added to the digests until the last article added to the
  37. thread is at least one month old (this is to ensure that the thread is dead
  38. before adding it to the digests).
  39.  
  40. Send administrative mail to mkelly@cs.uoregon.edu.
  41.  
  42. -------------------------------------------------------
  43.  
  44. From: harrison@devo.den.mmc.com (Clifford Harrison)
  45. Subject: calling XFCNs from an XFCN
  46. Date: 6 Mar 92 23:49:20 GMT
  47. Organization: Martin Marietta
  48.  
  49. I am trying to call two XFCN's from an XFCN in Supercard.  The following works ocassionally:
  50.  
  51. #include "HyperXCmd.h"
  52.  
  53. pascal void 
  54. main(paramPtr)
  55. XCmdBlockPtr    paramPtr;
  56. {
  57.  
  58.     register     int i,len;
  59.     typedef        void (*xfcn)();
  60.     Handle        db_next_row,db_data,saveit;
  61.     Str255        pattern,pattern2;
  62.     xfcn        get_row,get_data;
  63.  
  64.     /* set up code pointers */
  65.     db_next_row = GetResource('XFCN',1961);
  66.     if(db_next_row == NULL)
  67.         { 
  68.         return;
  69.         }
  70.     HLock(db_next_row);
  71.     get_row = (xfcn)*db_next_row;
  72.         
  73.     db_data = GetResource('XFCN',1962);
  74.     if(db_data == NULL) 
  75.         { 
  76.         return;
  77.         }
  78.     HLock(db_data);
  79.     get_data = (xfcn)*db_data;
  80.  
  81.     HLock(paramPtr->params[2]);
  82.     ZeroToPas(paramPtr, (unsigned char  *)*paramPtr->params[2], (StringPtr) &pattern);
  83.     HUnlock(paramPtr->params[2]);
  84.  
  85.     while (1)
  86.         {
  87.         paramPtr->paramCount = 1;
  88.         (*get_row)(paramPtr);
  89.         HLock(paramPtr->returnValue);
  90.         ZeroToPas(paramPtr, 
  91.             (unsigned char  *)*paramPtr->returnValue, 
  92.             (StringPtr) &pattern2);
  93.         if (StringEqual(paramPtr, (unsigned char  *) &pattern, 
  94.                 (unsigned char  *) &pattern2))
  95.             {
  96.             HUnlock(paramPtr->returnValue);
  97.             paramPtr->returnValue = saveit;
  98.             return;
  99.             }
  100.         else
  101.             {
  102.             HUnlock(paramPtr->returnValue);
  103.             DisposHandle(paramPtr->returnValue);
  104.             paramPtr->paramCount = 2;
  105.             (*get_data)(paramPtr);
  106.             HLock(paramPtr->returnValue); 
  107.             if (i==0)
  108.                 {
  109.                 saveit = paramPtr->returnValue;
  110.                 HandToHand(&saveit);
  111.                 }
  112.             else
  113.                 HandAndHand(paramPtr->returnValue,saveit);
  114.             HUnlock(paramPtr->returnValue);
  115.             }
  116.         }/* while(1) */
  117.         return;
  118.  
  119.     }
  120.  
  121.  
  122. By ocassionally i mean sometimes the return address of my XFCN or local variables get trashed.  Has anyone tried to do this before?
  123.  
  124. thanks.
  125.  
  126. My configuartion is:
  127. Think C 5.0
  128. System 7
  129. Supercard 1.5
  130. the two XFCN's are Sybase XFCN's
  131.  
  132. harrison@crowded-house.den.mmc.com
  133.  
  134. +++++++++++++++++++++++++++
  135.  
  136. From: Roger.W.Brown@dartmouth.edu (Roger W. Brown)
  137. Date: 11 Mar 92 13:55:15 GMT
  138. Organization: Dartmouth College, Hanover, NH
  139.  
  140. In article <1992Mar6.234920.514@den.mmc.com>
  141. harrison@devo.den.mmc.com (Clifford Harrison) writes:
  142.  
  143. > I am trying to call two XFCN's from an XFCN in Supercard.  The following works ocassionally:
  144.  
  145. I haven't done much with XCMDs in Supercard, so these ideas may not
  146. apply.
  147.  
  148. Why not just use a callback?
  149.  
  150. resultHandle = EvalExpr(paramPtr,"\pGetRow()");
  151.  
  152. This does not work to well if you want to send long parameters to the
  153. XFCN. 
  154.  
  155. Also, it would be a bit slower than calling directly.
  156.  
  157.  
  158. - -----------------------------------------------------------------
  159. Roger Brown                           Roger.W.Brown@dartmouth.edu
  160. Academic Computing
  161. Dartmouth College, Hanover, NH
  162.  
  163. ---------------------------
  164.  
  165. From: Brad Taplin <btaplin@silver.ucs.indiana.edu>
  166. Subject: Smalltalk/V or C as ideal development tool?
  167. Organization: Indiana University
  168. Date: Mon, 9 Mar 1992 10:07:59 -0500
  169.  
  170. Hello,
  171.  
  172. I own Borland C++ and find it easy to work with, but the
  173. language itself seems to some unnecessarily complex, and
  174. tough to debug. I would like to hear from those who have
  175. at least seen Smalltalk AND some affordable C like Think
  176. or Borland C++ in action. My machine is a 386sx-16 sVGA.
  177. Remember that gnu-ish Smalltalk and Smalltalk/V products
  178. differ greatly. Roughly prioritized concerns include:
  179.  
  180. 1. Speedy prototyping and incorporating the prototype into
  181.    larger projects. Digitalk claims their Smalltalk makes
  182.    this a breeze. I know there are code generators for C.
  183.  
  184. 2. Reasonably doable debugging and tweaking. Smalltalk, I
  185.    am told can be broken into small executable parts for
  186.    testing more easily than can C++ classes or functions.
  187.  
  188. 3. Tightness, reliability, and speed of final executables.
  189.    C might take this prize, but who knows about Smalltalk?
  190.  
  191. 4. Portability. Smalltalk code has been compiled without
  192.    changes on various platforms. So has C. Don't include 
  193.    the "Hello" programs as we discuss Windows, OS/2, Mac.
  194.  
  195. 5. Inherent advantages that might make either language a
  196.    better tool for future GUIs like that of the PowerPC.
  197.    Each is more than a language, more a complete system.
  198.  
  199. A textbook I recently skimmed in a local bookstore says
  200. Smalltalk started with Kay's PhD at Utah in the sixties.
  201. He foresaw Windows, mice, megabyte ram, and huge storage
  202. on the desktop. Is Smalltalk inherently better for GUIs?
  203.  
  204. Thanks.
  205.  
  206. +++++++++++++++++++++++++++
  207.  
  208. From: cyberman@toz.buffalo.ny.us (Cyberman)
  209. Date: 10 Mar 92 01:29:02 GMT
  210. Organization: The Tower of Zot - (716)838-0220
  211.  
  212. btaplin@silver.ucs.indiana.edu (Brad Taplin) writes:
  213. > 1. Speedy prototyping and incorporating the prototype into
  214. >    larger projects. Digitalk claims their Smalltalk makes
  215. >    this a breeze. I know there are code generators for C.
  216. Well smalltalk from what little I've done is HARTYING at best.
  217. I guess if you have the OOP nack it's not so bad.  But yes I must confess 
  218. this is true of small talk.
  219. > 3. Tightness, reliability, and speed of final executables.
  220. >    C might take this prize, but who knows about Smalltalk?
  221. Small talk compiles OK but is large in size when independant from the 
  222. development package.
  223. > 5. Inherent advantages that might make either language a
  224. >    better tool for future GUIs like that of the PowerPC.
  225. >    Each is more than a language, more a complete system.
  226. Advantage of C++ is it's common availability.  Also you can run it on NON 
  227. GUI system unlike smalltalk.  Learning small talk is like getting braces.  
  228. It takes A LONG time before you get it straight.
  229. Cyberman - NO JOKING.
  230.  
  231. A tagline a day keeps the vultures away.
  232.  
  233. +++++++++++++++++++++++++++
  234.  
  235. From: ju@Materna.DE (John Unwin)
  236. Date: 10 Mar 92 12:55:36 GMT
  237.  
  238. cyberman@toz.buffalo.ny.us (Cyberman) writes:
  239.  
  240. >btaplin@silver.ucs.indiana.edu (Brad Taplin) writes:
  241. >> 1. Speedy prototyping and incorporating the prototype into
  242. >>    larger projects. Digitalk claims their Smalltalk makes
  243. >>    this a breeze. I know there are code generators for C.
  244. >Well smalltalk from what little I've done is HARTYING at best.
  245. >I guess if you have the OOP nack it's not so bad.  But yes I must confess 
  246. >this is true of small talk.
  247.  
  248. Yes - but leaning to program MS Windows is no bowl of cherries!
  249. so get the OOP nack  - in all events to use c++ properly you 
  250. should be using its OOP characteristics.
  251.  
  252. I use smalltalk/V for protypes and find it works very well, because
  253. it can use DLLs you can work with a mixture of c :-( and Smalltalk :-)
  254. The relative ease depends on whether you have classes that you can
  255. use - or a similar application to adapt.
  256.  
  257. >> 3. Tightness, reliability, and speed of final executables.
  258. >>    C might take this prize, but who knows about Smalltalk?
  259. >Small talk compiles OK but is large in size when independant from the 
  260. >development package.
  261.  
  262. you need to ship the runtime DLLs + your application, although the
  263. app is usually small the DLLs are about 900K (you may freely distribute)
  264.  
  265. You can use C for the processing intensive functions be writing the
  266. c code, putting it a DLL then useing the DLL from smalltalk
  267.  
  268. Note that Smalltalk/V is quite resource hungry you will want somthing like
  269. a 386 with 4Mb ram to work with any ease.
  270.  
  271. >> 
  272. >> 5. Inherent advantages that might make either language a
  273. >>    better tool for future GUIs like that of the PowerPC.
  274. >>    Each is more than a language, more a complete system.
  275. >Advantage of C++ is it's common availability.  Also you can run it on NON 
  276. >GUI system unlike smalltalk.  Learning small talk is like getting braces.  
  277. >It takes A LONG time before you get it straight.
  278. >Cyberman - NO JOKING.
  279.  
  280. You can use Digitalks smalltalk with minimal modification for the MAC and
  281. OS/2 - for future GUIs you need to contact Digitalk, no doubt c++ will be
  282. around for a while and would have the advantage of new class libraries
  283. for new GUIs.
  284.  
  285. +++++++++++++++++++++++++++
  286.  
  287. From: mst@vexpert.dbai.tuwien.ac.at (Markus Stumptner)
  288. Date: 11 Mar 92 11:03:25 GMT
  289. Organization: DB and ES Subdivision, TU Vienna
  290.  
  291. >From article <4mceHB5w164w@toz.buffalo.ny.us>, by cyberman@toz.buffalo.ny.us (Cyberman):
  292. > btaplin@silver.ucs.indiana.edu (Brad Taplin) writes:
  293. >> 1. Speedy prototyping and incorporating the prototype into
  294. >>    larger projects. 
  295. > Well smalltalk from what little I've done is HARTYING at best.
  296.  
  297. I'm sorry, but what does that word mean?
  298.  
  299. > I guess if you have the OOP nack it's not so bad.  
  300.  
  301. If you don't want to use OOP, then Smalltalk indeed is not suitable.
  302. In C++, one can always write code that looks just like C (judging from
  303. your phrasing, is that your preference?  That's not what C++ is
  304. about).
  305.  
  306. >> 5. Inherent advantages that might make either language a
  307. >>    better tool for future GUIs like that of the PowerPC.
  308. >>    Each is more than a language, more a complete system.
  309. > Advantage of C++ is it's common availability.  
  310.  
  311. There are Smalltalk implementations for X-Windows (for the major
  312. workstation manufacturers), for MS Windows, for OS/2, for DOS and the
  313. Mac.  Admittedly, you need graphics capability, but that's what the
  314. question was about.
  315.  
  316. > Learning small talk is like getting braces.  
  317. > It takes A LONG time before you get it straight.
  318.  
  319. Especially when compared with a small, elegant and unrestricting
  320. language like C++ :-) . 
  321. - -- 
  322. Markus Stumptner                                mst@vexpert.dbai.tuwien.ac.at
  323. University of Technology Vienna                 vexpert!mst@uunet.uu.net
  324. Paniglg. 16, A-1040 Vienna, Austria             ...mcsun!vexpert!mst
  325.  
  326. ---------------------------
  327.  
  328. From: pbrande1@cc.swarthmore.edu (Philip Brandenberger)
  329. Subject: ASP, the Server Side
  330. Organization: Swarthmore College
  331. Date: Tue, 10 Mar 1992 10:39:45 GMT
  332.  
  333. Greetings,
  334.  
  335. I am using Appletalk to communicate between a client process on various
  336. macs and a server application.  I would like to use ASP, but I find only
  337. brief mention of the server side at all, and no clues as to what support
  338. is available (what the protocol does for you, what calls to make, etc.)
  339.  
  340. Is the server side implemented, or is this done by each app through ATP?
  341.  
  342. If the server side is indeed part of .XPP, or some glue, where's it 
  343. documented?  I've checked IM I-VI, but not Inside Appletalk.
  344.  
  345. Replies via email please, as this is a dumb question.  :-)
  346.  
  347. Thanks,
  348. Phil
  349.  
  350.  
  351. - -- 
  352. Philip J. Brandenberger
  353. Swarthmore College, but I don't speak for it, usually against it.
  354. pbrande1@cc.swarthmore.edu
  355.  
  356. +++++++++++++++++++++++++++
  357.  
  358. From: peirce@outpost.SF-Bay.org (Michael Peirce)
  359. Date: 12 Mar 92 03:03:16 GMT
  360. Organization: Peirce Software
  361.  
  362.  
  363. In article <C67FBN24@cc.swarthmore.edu> (comp.sys.mac.programmer), pbrande1@cc.swarthmore.edu (Philip Brandenberger) writes:
  364. > Greetings,
  365. > I am using Appletalk to communicate between a client process on various
  366. > macs and a server application.  I would like to use ASP, but I find only
  367. > brief mention of the server side at all, and no clues as to what support
  368. > is available (what the protocol does for you, what calls to make, etc.)
  369. > Is the server side implemented, or is this done by each app through ATP?
  370. > If the server side is indeed part of .XPP, or some glue, where's it 
  371. > documented?  I've checked IM I-VI, but not Inside Appletalk.
  372.  
  373. ASP server side interfaces are not provided by Apple.  You have to
  374. roll your own using ATP if you really have to use ASP.
  375.  
  376. Personally, I'd use ADSP.  It's got better throughput than ASP (since
  377. ASP uses ATP and ADSP doesn't) and it fully supported.  Consider it.
  378.  
  379. - --  Michael Peirce         --   peirce@outpost.SF-Bay.org
  380. - --  Peirce Software        --   Suite 301, 719 Hibiscus Place
  381. - --  Macintosh Programming  --   San Jose, California USA 95117
  382. - --           & Consulting  --   voice: (408) 244-6554 fax: (408) 244-6882
  383. - --                         --   AppleLink: peirce & America Online: AFC Peirce
  384.  
  385. ---------------------------
  386.  
  387. From: jpf20694@uxa.cso.uiuc.edu (Joseph Peter Fleck)
  388. Subject: Shift Key Woes
  389. Organization: University of Illinois at Urbana
  390. Date: Wed, 11 Mar 1992 05:42:04 GMT
  391.  
  392. Hello, all,
  393.     Just a quick question.  Does anyone know the 
  394. C source for detecting a depression of the shift
  395. key WITHOUT another key...  I know there's a way
  396. to do it, I just can't figure it out.  ANY
  397. ideas on the subject would be greatly appreciated.
  398. E-mail is peachy.  Thanks.
  399. - -Joe Fleck
  400. jpf20694@uxa.cso.uiuc.edu
  401.  
  402.  
  403. +++++++++++++++++++++++++++
  404.  
  405. From: fox@magog.cs.uiuc.edu (Armando Fox)
  406. Organization: University of Illinois, Dept. of Comp. Sci., Urbana, IL
  407. Date: Wed, 11 Mar 1992 15:57:09 GMT
  408.  
  409. jpf20694@uxa.cso.uiuc.edu (Joseph Peter Fleck) writes:
  410.  
  411. >C source for detecting a depression of the shift
  412. >key WITHOUT another key...  I know there's a way
  413. >to do it, I just can't figure it out.  
  414.  
  415. all foreground and most background applications receive regular
  416. NullEvents.  check the modifiers field of a NullEvent's event record for
  417. the shift key.
  418.  
  419. ======================================================================
  420. Armando Fox        Beckman Institute Vision/Robotics Group
  421. afox@uiuc.edu        University of Illinois at Urbana-Champaign
  422.  
  423. "You're entitled to your own incorrect opinion."
  424. ======================================================================
  425.  
  426.  
  427. +++++++++++++++++++++++++++
  428.  
  429. From: jmunkki@hila.hut.fi (Juri Munkki)
  430. Date: 12 Mar 92 12:49:03 GMT
  431. Organization: Helsinki University of Technology, Finland
  432.  
  433. In article <1992Mar11.054204.226@ux1.cso.uiuc.edu> jpf20694@uxa.cso.uiuc.edu (Joseph Peter Fleck) writes:
  434. >    Just a quick question.  Does anyone know the 
  435. >C source for detecting a depression of the shift
  436. >key WITHOUT another key...  I know there's a way
  437. >to do it, I just can't figure it out.  ANY
  438. >ideas on the subject would be greatly appreciated.
  439.  
  440. All events come with the modifier flags set according to the conditions
  441. that were present when the event was created. You can either get the
  442. shit key state from your main event loop or you can ask for a null
  443. event (with a 0 event mask) and find out the modifier keys from there.
  444.  
  445. Using GetKeys is another possibility, but I prefer getting the shift
  446. key state from the event record, since I get events anyway and save a
  447. trap call that way.
  448.  
  449.    ____________________________________________________________________________
  450.   / Juri Munkki        /  Helsinki University of Technology   /  Wind  / Project /
  451.  / jmunkki@hut.fi  /  Computing Center Macintosh Support  /  Surf  / Arashi  /
  452.  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  453.  
  454. ---------------------------
  455.  
  456. From: mike@zorch.SF-Bay.ORG (Mike Smithwick)
  457. Subject: Think-C Floating point support - Why so slow??
  458. Organization: SF-Bay Public-Access Unix
  459. Date: Wed, 11 Mar 1992 07:43:37 GMT
  460.  
  461. []
  462.  
  463. Ok, I give up. What is the Think-C floating point library so damned
  464. slow?? HUH?
  465.  
  466. I am porting a package over to the mac (Mac IIci) from my Amiga 3000. The
  467. machines should be comparible in speed, but when compiled for software
  468. floating point the Amiga using Moto. FFP libs runs rings around Think.
  469. Trig functions are 10 times faster on the Amy, floating point divides
  470. about 3 times faster. Heck, on the mac I tried a trig lookup table, and
  471. it still runs 3 times slower than the Amiga FFP libraries. 
  472.  
  473. I am using the "native" floating point mode, which seemed to have
  474. sped things up just a tad over the "Universal" mode, but geeeze, isn't
  475. there anything faster??
  476.  
  477.  
  478.  
  479. mike
  480.  
  481. P.S. Yes, I know about SANE, and FPUs and all that, but I want to
  482. make this thing run fast on a Mac Classic.
  483.  
  484.  
  485. - -- 
  486. "There is no problem too big that can't be solved with high explosives"-Rush
  487.  
  488. Mike Smithwick - ames!zorch!mike
  489.  
  490.  
  491. +++++++++++++++++++++++++++
  492.  
  493. From: dougm@descartes.cns.caltech.edu (Doug McNaught)
  494. Date: 11 Mar 92 19:05:48 GMT
  495. Organization: California Institute of Technology
  496.  
  497. In article <1992Mar11.074337.21123@zorch.SF-Bay.ORG> mike@zorch.SF-Bay.ORG (Mike Smithwick) writes:
  498. >[]
  499. >
  500. >Ok, I give up. What is the Think-C floating point library so damned
  501. >slow?? HUH?
  502.  
  503.     It's slow because SANE is slow. SANE is slow because it's extremely robust
  504. and accurate. Trig functions are done in software, even with an FPU present,
  505. because the 6888[1,2] is not quite up to the SANE standard of accuracy. 
  506.  
  507. >  [Amiga's Moto. FFP libs are faster than the Mac]
  508.  
  509. >I am using the "native" floating point mode, which seemed to have
  510. >sped things up just a tad over the "Universal" mode, but geeeze, isn't
  511. >there anything faster??
  512.  
  513.   Not without rolling your own.
  514.  
  515. >P.S. Yes, I know about SANE, and FPUs and all that, but I want to
  516. >make this thing run fast on a Mac Classic.
  517.  
  518.   Sorry dude. If you really need it, you could always write your own set
  519. of assembly language single-precision stuff. Fast fp on a Classic just isn't
  520. doable otherwise. (I should know--that's all I can afford :-[ )
  521.  
  522. >-- 
  523. >"There is no problem too big that can't be solved with high explosives"-Rush
  524.  
  525.   or handcrafted assembly code!
  526.  
  527. >
  528. >Mike Smithwick - ames!zorch!mike
  529.  
  530.  
  531. - -- 
  532. <><><><><><><><><><><><><><><>Go Skins!!<><><><><><><><><><><><><><><><>
  533. <> Doug McNaught                          dougm@descartes.caltech.edu <>
  534. <>  Help!!! I'm addicted to *Spaceward Ho!* Is there a support group? <>
  535. <><><><><><><><><><><><><><><>Go Skins!!<><><><><><><><><><><><><><><><>
  536.  
  537. ---------------------------
  538.  
  539. From: pl4262@csc.albany.edu (Peter Lau)
  540. Subject: OpenAda from Meridian, got any comment?
  541. Organization: State University of New York at Albany
  542. Date: 11 Mar 92 11:36:19
  543.  
  544. Hi, 
  545.  
  546. I would like to hear any comment (for example, how good is OpenAda?
  547. How close with the std. Ada? Generic, Exception Handler? Concurrency?
  548. Mac Toolbox support? Correct code generation?)
  549.  
  550. Will summarize if enough responds.
  551.  
  552. Thanks.
  553.  
  554. Peter Lau
  555. - --
  556. Peter Lau
  557. - -- 
  558.  
  559. +++++++++++++++++++++++++++
  560.  
  561. From: cshotton@oac.hsc.uth.tmc.edu (Chuck Shotton)
  562. Date: 11 Mar 92 23:14:49 GMT
  563. Organization: UTHSCH Academic Computing
  564.  
  565. In article <PL4262.92Mar11113619@eve.albany.edu>, pl4262@csc.albany.edu (Peter Lau) writes:
  566. > Hi, 
  567. > I would like to hear any comment (for example, how good is OpenAda?
  568. > How close with the std. Ada? Generic, Exception Handler? Concurrency?
  569. > Mac Toolbox support? Correct code generation?)
  570.  
  571. I've used it. It does a good job of implementing Ada given the constraints of 
  572. the Mac's O/S. If you don't try to use every obscure Ada feature in the LRM,
  573. it seems pretty stable. Compiler performance is something less than MPW
  574. Pascal, but FAR better than it used to be. Tasking works as do generics.
  575. However, there are limits placed on compilation unit size based on the Mac's
  576. 32K segment size. You have to be aware of just how huge things like generics
  577. can turn out to be.
  578.  
  579. The MAJOR advantage to Meridian's Ada compiler is that you can buy it with the
  580. Macintosh Environment Library, which provides packages for all of Inside Mac
  581. volumes 1-5 (well, almost all). It also links well with MPW C (pragma import).
  582.  
  583. It is a validated compiler, so it obviously follows the standard quite
  584. closely. It uses the same front end and development environment as all of
  585. Meridian's other compilers, so if you're familiar with them, you can see what
  586. the Mac version will be like.
  587.  
  588. Chuck
  589.  
  590. +++++++++++++++++++++++++++
  591.  
  592. From: robichau@freedom.msfc.nasa.gov (Paul Robichaux)
  593. Date: 12 Mar 92 14:06:12 GMT
  594. Organization: New Technology, Inc.
  595.  
  596. In <1992Mar11.235354.24105@midway.uchicago.edu> jcav@quads.uchicago.edu (JohnC) writes:
  597.  
  598.  
  599. >Since Apple's MPW C and Pascal compilers now have options to relax the 32K
  600. >restriction, I wonder why Meridian hasn't followed suit?
  601.  
  602. There was a good bit of discussion on Meridian's OpenAda/Mac product
  603. in comp.lang.ada a couple of months ago.
  604.  
  605. Consensus was that it was a pretty good first cut. However, according
  606. to Meridian's sales manager for educational sales, sales volume of the
  607. Mac version has been so low that Meridian doesn't plan to make any
  608. major functional improvements: i.e. no Sys7 support, no relaxation of
  609. the 32k restriction, and limited minor bug fixes. I presume that major
  610. bugs (those which would prevent the compiler from passing the ACEC or
  611. ACVC test suites) will still be fixed, sime they tend to come from the
  612. backend rather than the common front-end.
  613.  
  614. - -Paul
  615. - -- 
  616. Paul Robichaux, KD4JZG          |  Read any good RFCs lately?
  617. robichau@freedom.msfc.nasa.gov  |  Disclaimer: NTI pays for my skills.
  618.                                 |  My opinions are mine, not theirs or NASA's.
  619.      Help port DEC Modula-3 to the Mac! Email for details.
  620.  
  621. ---------------------------
  622.  
  623. From: asunta@convex.csc.FI (Miika Asunta)
  624. Subject: THINK C 5.01 and QUADRA... )-:
  625. Date: 11 Mar 92 15:38:39 GMT
  626. Organization: Finnish Academic and Research Network Project - FUNET
  627.  
  628.  
  629. I've been writing a program with THINK C 5.01 that I've found 
  630. very clean - ie. it works from MacPlus to fx with virtual memory on,
  631. full colors etc.
  632.  
  633. It of course should have worked with Quadra... unfortunately, it didn't.
  634. (with '040 cache on, without cache it worked perfectly).
  635. It installed menus etc., but before giving control to the user
  636. it bombed with ID 15, Segment Loader Error (GetResource('CODE',n) failed).
  637.  
  638. I wonder is it a problem of mine or problem or THINK compiler/linker.
  639.  
  640. I understand the 5.0.1 update should have fixed problems
  641. with applications produced with THINK C.
  642.  
  643. >From "About 5.0 => 5.01" TeachText document:
  644.     
  645.     "When assigning one struct to another, the code THINK C 
  646.     generates now works correctly if the source struct is 
  647.     cached in an MC68040 data register."
  648.  
  649. That was the only comment on fixes for '040 besides the Source Debugger
  650. fix. Are there other undocumented bugs? If so is there going to be 
  651. an update?
  652.  
  653. At the moment I have no chance to go a Quadra and run my software
  654. with THINK C Source Debugger, which might clear to thins out.
  655.  
  656. Miika
  657.  
  658. - --
  659. &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
  660. &  Miika Asunta        &  asunta@convex.csc.fi  &  Double Bass Player   &
  661. & tel. +358-0-494 093  &             &  Macintosh Programmer &
  662. &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
  663.  
  664. +++++++++++++++++++++++++++
  665.  
  666. From: wombat@claris.com (Scott Lindsey)
  667. Date: 12 Mar 92 21:21:23 GMT
  668. Organization: Claris Corporation
  669.  
  670. In article <1992Mar11.153839.18724@nic.funet.fi>, asunta@convex.csc.FI (Miika Asunta) writes:
  671. > It of course should have worked with Quadra... unfortunately, it didn't.
  672. > (with '040 cache on, without cache it worked perfectly).
  673. > It installed menus etc., but before giving control to the user
  674. > it bombed with ID 15, Segment Loader Error (GetResource('CODE',n) failed).
  675. > I wonder is it a problem of mine or problem or THINK compiler/linker.
  676. I think it may be your problem.  Think C 5.0.1 (the actual compiler application) runs fine
  677. on a Quadra 700 here, but if you want to use the debugger, you need to upgrade to 5.0.2.
  678. The 5.0.2 release notes say they fixed problems with Quadras and the debugger.
  679.  
  680. - --
  681. Scott Lindsey <wombat@claris.com>
  682.  
  683. ---------------------------
  684.  
  685. From: jpf20694@uxa.cso.uiuc.edu (Joseph Peter Fleck)
  686. Subject: Oh no, more woes!
  687. Date: 12 Mar 92 03:56:28 GMT
  688. Organization: University of Illinois at Urbana
  689.  
  690. Ok, this is similar to my last post, but slightly different.
  691. The question is, say you were laying your finger on
  692. the "8" key, and wanted to keep that "autoKey" in the
  693. Event.what field active when you hit the Shift key.  This
  694. is what I want.  I would like (for a game that is nearing
  695. completion) to be able to keep a tank moving with the
  696. keyboard whilst firing with the shift key.  What happens, 
  697. is that when the shift key is hit, the autoKey gets set
  698. back to a keydown event.  I've even tried to get around
  699. this by checking to see if the shift key was hit and
  700. the same previous key is being still held down... No
  701. dice... How would you do it, o programmers of the
  702. net?  Thanks again!
  703.  
  704. - -Joe Fleck
  705. jpf20694@uxa.cso.uiuc.edu
  706.  
  707. +++++++++++++++++++++++++++
  708.  
  709. From: ejhill@athena.mit.edu (Ernest J Hill)
  710. Date: 12 Mar 92 14:55:25 GMT
  711. Organization: Massachusetts Institute of Technology
  712.  
  713. If you need to keep track of the status of multiple keys at once, you can't
  714. really use key events; you should instead use the toolbox routine GetKeys(),
  715. which gives you back a 'KeyMap' structure.  The KeyMap contains the status
  716. of *every* key (I think this is true unless more than 5 keys are down at
  717. once).  Anyway, this is in IM I, I don't have mine here so no page reference,
  718. sorry.  Good luck!  I hope this helps.
  719.                     --Foss Hill
  720.  
  721. +++++++++++++++++++++++++++
  722.  
  723. From: mcmath@csb1.nlm.nih.gov (Chuck McMath)
  724. Date: 12 Mar 92 13:18:16 GMT
  725. Organization: MSD
  726.  
  727. In article <1992Mar12.035628.12274@ux1.cso.uiuc.edu>, jpf20694@uxa.cso.uiuc.edu (Joseph Peter Fleck) writes:
  728. > Ok, this is similar to my last post, but slightly different.
  729. > The question is, say you were laying your finger on
  730. > the "8" key, and wanted to keep that "autoKey" in the
  731. > Event.what field active when you hit the Shift key.  This
  732. > is what I want.  I would like (for a game that is nearing
  733. > completion) to be able to keep a tank moving with the
  734. > keyboard whilst firing with the shift key.  What happens, 
  735. > is that when the shift key is hit, the autoKey gets set
  736. > back to a keydown event.  I've even tried to get around
  737. > this by checking to see if the shift key was hit and
  738. > the same previous key is being still held down... No
  739. > dice... How would you do it, o programmers of the
  740. > net?  Thanks again!
  741. > -Joe Fleck
  742. > jpf20694@uxa.cso.uiuc.edu
  743.  
  744. My suggestion would be to use GetKeys to retrieve the keyboard state.  In
  745. that way you can check to see which keys are being held down at any time.
  746. The only problem with this is that you can't rely on events and have to
  747. be in a tight polling loop.  But for a game that isn't too much of a
  748. restriction.
  749.  
  750. chuck
  751.  
  752.                        --chuck mcmath-
  753.                     mcmath@csb1.nlm.nih.gov
  754.   MSD, Inc. * National Library of Medicine * National Institutes of Health
  755.                        Bethesda, MD 20894
  756.  
  757. ---------------------------
  758.  
  759. From: k044477@hobbes.kzoo.edu (Jamie R. McCarthy)
  760. Subject: Always having another rsrc file open (was Re: Preference Files/Folders: How to do under 6.x?)
  761. Organization: Kalamazoo College
  762. Date: Thu, 27 Feb 1992 21:25:44 GMT
  763.  
  764. dorner@pequod.cso.uiuc.edu (Steve Dorner) writes:
  765. >Eudora keeps her settings file open all the time.  Settings are kept
  766. >in a resource, and having the settings file open means it's always at
  767. >the top of the resource chain.  This has the benefit of allowing users
  768. >to override resources in Eudora by putting resources in the settings
  769. >file.
  770. >
  771. >What's nice about putting these resources in the settings file is that
  772. >a) they don't affect other users, like they would if users editted the
  773. >app directly and b) users don't lose their customizations when they upgrade
  774. >to the next version of Eudora.
  775.  
  776. I agree, that's a nice setup.
  777.  
  778. I remember reading an article in csmp a few weeks ago that indicated
  779. that the Help Manager would only search the first file in the resource
  780. chain.  I took this to mean that I should always have the topmost
  781. resource file be the application file, at least every time I went
  782. through WaitNextEvent.  Not only for balloon help, but also because
  783. Apple has apparently decided to require this...
  784.  
  785. Any comments, anyone?
  786. -- 
  787.  Jamie McCarthy     Internet: k044477@kzoo.edu     AppleLink: j.mccarthy
  788.  Kzoo randomly kills all my mail;  if I don't acknowledge, try resending.    
  789.  
  790.  
  791.  
  792. - -------------------------
  793.  
  794. From: dorner@pequod.cso.uiuc.edu (Steve Dorner)
  795. Date: 3 Mar 92 19:29:55 GMT
  796. Organization: University of Illinois at Urbana-Champaign
  797.  
  798. k044477@hobbes.kzoo.edu (Jamie R. McCarthy) writes:
  799. >I remember reading an article in csmp a few weeks ago that indicated
  800. >that the Help Manager would only search the first file in the resource
  801. >chain.
  802.  
  803. Not currently.  If it were so, Balloon Help wouldn't work in Eudora.
  804.  
  805. >I took this to mean that I should always have the topmost
  806. >resource file be the application file, at least every time I went
  807. >through WaitNextEvent. ... Apple has apparently decided to require this
  808.  
  809. Do you have some documentation on this requirement?
  810. - -- 
  811. Steve Dorner, U of Illinois Computing Services Office
  812. Internet: s-dorner@uiuc.edu  UUCP: uunet!uiucuxc!uiuc.edu!s-dorner
  813.  
  814. - -------------------------
  815.  
  816. From: leonardr@ccs.itd.umich.edu
  817. Date: 28 Feb 92 18:29:41 GMT
  818. Organization: Campus Computing Sites, University of Michigan-Ann Arbor
  819.  
  820. In article <1992Feb27.212544.8371@hobbes.kzoo.edu> k044477@hobbes.kzoo.edu (Jamie R. McCarthy) writes:
  821. >dorner@pequod.cso.uiuc.edu (Steve Dorner) writes:
  822. >>What's nice about putting these resources in the settings file is that
  823. >>a) they don't affect other users, like they would if users editted the
  824. >>app directly and b) users don't lose their customizations when they upgrade
  825. >>to the next version of Eudora.
  826. >
  827. >I agree, that's a nice setup.
  828. >
  829. >I remember reading an article in csmp a few weeks ago that indicated
  830. >that the Help Manager would only search the first file in the resource
  831. >chain.  I took this to mean that I should always have the topmost
  832. >resource file be the application file, at least every time I went
  833. >through WaitNextEvent.  Not only for balloon help, but also because
  834. >Apple has apparently decided to require this...
  835. >
  836.     I believe that I was the one that wrote the thingy about the Help
  837. Mngr using Get1Resource calls, so I'll comment ;-)
  838.  
  839.     It is not the entire HelpMgr that is stupid enough to use Get1 calls,
  840. jnust some of it - ufnortunately it is not documented which do and which
  841. do not.  I discoverd the problem the hard way in that MPII also keeps a whole 
  842. slew of other resource forks open (prefs, toolbox, settings, etc.) and my
  843. "Dynamic Window Help" code wasn't working.  Menus (hmnu's) worked fine
  844. and hdlg's worked fine, but when calling HMShowBalloon yourself it just
  845. couldn't get it right...A little trip into the debugger showed what was
  846. going on.
  847.  
  848.     I don't see any reason that switching CurResFile (via UseResFile)
  849. in yoru event loop & only changing it when you need ot wouldn't work -
  850. unless you've got executing code in some of those forks (for example
  851. XCMD's).
  852.  
  853.  
  854. - -- 
  855. - -----------------------------------------------------------------------
  856. Leonard Rosenthol          Internet: leonardr@ccs.itd.umich.edu
  857. Director of Advanced Technology   AppleLink: MACgician
  858. Aladdin Systems, inc.          GEnie:     MACgician
  859.  
  860. +++++++++++++++++++++++++++
  861.  
  862. From: dorner@pequod.cso.uiuc.edu (Steve Dorner)
  863. Date: 6 Mar 92 20:07:16 GMT
  864. Organization: University of Illinois at Urbana-Champaign
  865.  
  866. leonardr@ccs.itd.umich.edu writes:
  867. >"Dynamic Window Help" code wasn't working.  Menus (hmnu's) worked fine
  868. >and hdlg's worked fine, but when calling HMShowBalloon yourself it just
  869. >couldn't get it right
  870.  
  871. HMShowBalloon has always worked fine for me in Eudora, and I always keep the
  872. preferences file, not the application, at the top of the resource chain.
  873.  
  874. Was this perhaps a bug in beta versions of System 7?  Or are only certain
  875. help resource types affected?  I'm using khmmStringRes's, and they work
  876. fine.
  877. - -- 
  878. Steve Dorner, U of Illinois Computing Services Office
  879. Internet: s-dorner@uiuc.edu  UUCP: uunet!uiucuxc!uiuc.edu!s-dorner
  880.  
  881. +++++++++++++++++++++++++++
  882.  
  883. From: leonardr@ccs.itd.umich.edu
  884. Date: 8 Mar 92 20:18:52 GMT
  885. Organization: Campus Computing Sites, University of Michigan-Ann Arbor
  886.  
  887. In article <1992Mar3.192955.2327@ux1.cso.uiuc.edu> dorner@pequod.cso.uiuc.edu (Steve Dorner) writes:
  888. >k044477@hobbes.kzoo.edu (Jamie R. McCarthy) writes:
  889. >>I remember reading an article in csmp a few weeks ago that indicated
  890. >>that the Help Manager would only search the first file in the resource
  891. >>chain.
  892. >
  893. >Not currently.  If it were so, Balloon Help wouldn't work in Eudora.
  894. >
  895.     If you don't make any direct calls to the Help Manager that bring up
  896. Balloons you are OK - but some/all of the "direct" calls like HMShowBalloon,
  897. HMShowMenuBalloon, HMExtractHelpMsg only use a Get1Resource...
  898.  
  899. - -- 
  900. - -----------------------------------------------------------------------
  901. Leonard Rosenthol          Internet: leonardr@ccs.itd.umich.edu
  902. Director of Advanced Technology   AppleLink: MACgician
  903. Aladdin Systems, inc.          GEnie:     MACgician
  904.  
  905. +++++++++++++++++++++++++++
  906.  
  907. From: leonardr@ccs.itd.umich.edu
  908. Date: 8 Mar 92 20:26:13 GMT
  909. Organization: Campus Computing Sites, University of Michigan-Ann Arbor
  910.  
  911. In article <1992Mar6.200716.29360@ux1.cso.uiuc.edu> dorner@pequod.cso.uiuc.edu (Steve Dorner) writes:
  912. >leonardr@ccs.itd.umich.edu writes:
  913. >>"Dynamic Window Help" code wasn't working.  Menus (hmnu's) worked fine
  914. >>and hdlg's worked fine, but when calling HMShowBalloon yourself it just
  915. >>couldn't get it right
  916. >
  917. >HMShowBalloon has always worked fine for me in Eudora, and I always keep the
  918. >preferences file, not the application, at the top of the resource chain.
  919. >
  920.     The problem, after going back and looking at my notes, was not in
  921. the HMShowBalloon call, but in the HMExtractHelpMsg routine which I use to
  922. get WHATEVER type of helpis available since this code is used both for 
  923. "internal" and "external" dialogs so there may be PICT or TEXT/styl based
  924. help so I need to get the "correct" info.
  925.  
  926.  
  927. - -- 
  928. - -----------------------------------------------------------------------
  929. Leonard Rosenthol          Internet: leonardr@ccs.itd.umich.edu
  930. Director of Advanced Technology   AppleLink: MACgician
  931. Aladdin Systems, inc.          GEnie:     MACgician
  932.  
  933. +++++++++++++++++++++++++++
  934.  
  935. From: ross@bnr.ca (Ross Brown)
  936. Date: 10 Mar 92 15:45:36 GMT
  937. Organization: Bell-Northern Research
  938.  
  939. In article <1992Mar8.201852.8255@terminator.cc.umich.edu>
  940. leonardr@ccs.itd.umich.edu writes:
  941. >In article <1992Mar3.192955.2327@ux1.cso.uiuc.edu> dorner@pequod.cso.uiuc.edu
  942. (Steve Dorner) writes:
  943. >>k044477@hobbes.kzoo.edu (Jamie R. McCarthy) writes:
  944. >>>I remember reading an article in csmp a few weeks ago that indicated
  945. >>>that the Help Manager would only search the first file in the resource
  946. >>>chain.
  947. >>
  948. >>Not currently.  If it were so, Balloon Help wouldn't work in Eudora.
  949. >>
  950. >    If you don't make any direct calls to the Help Manager that bring up
  951. >Balloons you are OK - but some/all of the "direct" calls like HMShowBalloon,
  952. >HMShowMenuBalloon, HMExtractHelpMsg only use a Get1Resource...
  953. >
  954.  
  955. I may be the author of the posting that Jamie refers to.  I have had several
  956. discussions with the author of the Help Manager.  My specific complaint was
  957. that 'hovr' resources were not respected if not found in the current resource
  958. file, so putting them in the application file is not sufficient if you always
  959. keep the preferences file open.  As you say, this is because Get1Resource is
  960. being called.
  961.  
  962. If HMShowBalloon gives you trouble because the help message record refers to a
  963. resource not in the current resource file, you can always use CurResFile to
  964. twist things the way you want.  It's the cases you DON'T have direct program
  965. control over, like 'hovr', that are annoying.
  966.  
  967. Ross Brown
  968. Bell-Northern Research Ltd.
  969. Ottawa, Ontario, Canada
  970. ross@bnr.ca
  971. Opinions expressed do not necessarily represent those of BNR.
  972.  
  973. ---------------------------
  974.  
  975. From: osborn@me1.lbl.gov (James R. Osborn)
  976. Subject: Mac Assembly Hacking
  977. Date: 29 Feb 92 06:24:42 GMT
  978. Organization: Lawrence Berkeley Laboratory, Berkeley
  979.  
  980.  
  981. Hi folks,
  982.  
  983. I got a friend, see?  He want's to disassemble
  984. some Mac code resources to see exactly what they're
  985. doing.  Then he'd like to be able to hack on the
  986. code to customize it, (i.e. "FIX" it).  I've heard
  987. of some tools that let you do this kind of stuff,
  988. but I've not done anything of the kind myself.
  989.  
  990. What are the best tools to do this kind of work?
  991. All opinions are welcome regarding shareware and/or
  992. comercial products.  Please e-mail responses to me,
  993. and I shall summarize.
  994.  
  995. -- James
  996.  
  997.  ------------------------------ ))) -------------------------------------------
  998.             James R. Osborn    (((   It just goes to show you it's always
  999.  Lawrence Berkeley Laboratory   \\\    something.  Either it's goofy
  1000.             osborn@me1.lbl.gov   )))    tech notes or your mac is flying!
  1001.               (510) 486-7052    (((   It's always something...
  1002.  ------------------------------- \\\ ------------------------------------------
  1003.  
  1004.  
  1005.  
  1006. +++++++++++++++++++++++++++
  1007.  
  1008. From: osborn@me1.lbl.gov (James R. Osborn)
  1009. Date: 9 Mar 92 03:00:35 GMT
  1010. Organization: Lawrence Berkeley Laboratory, Berkeley
  1011.  
  1012. Regarding tools for disassembling and hacking on Mac
  1013. code resources and such, I'd like to thank these folks
  1014. for replying:
  1015.  
  1016. dwelch@scueng.scu.edu            (Dameon D. Welch)
  1017. tagreen@bronze.ucs.indiana.edu   (Todd Green)
  1018. CHERRY%howard@msscc.med.utah.edu (Josh)
  1019. lasleyse@wam.umd.edu             (Scott E. Lasley)
  1020. peterc@moebius.cubetech.com      (Peter Creath)
  1021. andre@cs.pitt.edu                (Andre "Just A Plumber" Srinivasan)
  1022. c03@clark.edu                    (Steve P Day)
  1023.  
  1024. Most suggestions were for ResEdit with the combination CODE
  1025. disassembler/editor.  You can edit the resource using a HEX
  1026. editor and then see if it disassembles the way you want it
  1027. with the disassembler.  The disassebler does a nice job of
  1028. letting you navigate the resource by providing double-clickable
  1029. (graphically displayed) links where the code branches or jumps
  1030. to a subroutine.
  1031.  
  1032. The next most popular suggestion was for MacsBug, the Macintosh
  1033. debugger, which disassembles anything in memory.  You can use
  1034. "set memory" commands to edit code in memory on the fly.  I
  1035. guess you could load a resource in memory, hack on it with
  1036. MacsBug, and then (after setting resChanged attribute) write
  1037. the resource out to a file.  The MacsBug interface is much
  1038. more bare-bones than the ResEdit CODE disassembler, but it
  1039. obviously has a lot of other features for debugging.
  1040.  
  1041. ResEdit, the optional CODE editor/disassembler (which you
  1042. install into ResEdit or its preferences file), and MacsBug
  1043. are all available from Apple via anonymous ftp at the host
  1044. "ftp.apple.com".  Look in the /dts/mac/tools/resedit and
  1045. /dts/mac/tools/macsbug directories.
  1046.  
  1047. One other suggestion was for the MPW DumpCode tool which will
  1048. dissassemble code resources.  This presumably comes with MPW,
  1049. but since I don't have it, I don't know for sure.  No comments
  1050. on ways to edit with this tool.
  1051.  
  1052. Thanks folks.  Actually I was hoping for something a little
  1053. more friendly than HEX editing and set mem'ing.  If anyone
  1054. has anything to add to this scant list of tools, feel free.
  1055.  
  1056. - -- James
  1057.  
  1058.  ------------------------------ ))) -------------------------------------------
  1059.             James R. Osborn    (((   It just goes to show you it's always
  1060.  Lawrence Berkeley Laboratory   \\\    something.  Either it's goofy
  1061.             osborn@me1.lbl.gov   )))    tech notes or your mac is meditating!
  1062.               (510) 486-7052    (((   It's always something...
  1063.  ------------------------------- \\\ ------------------------------------------
  1064.  
  1065. +++++++++++++++++++++++++++
  1066.  
  1067. From: iron@imag.imag.fr (Francois Menneteau)
  1068. Date: 12 Mar 92 10:42:28 GMT
  1069. Organization: IMAG Institute, University of Grenoble, France
  1070.  
  1071. In article <21843@dog.ee.lbl.gov> osborn@me1.lbl.gov writes:
  1072. >Regarding tools for disassembling and hacking on Mac
  1073. >code resources and such, I'd like to thank these folks
  1074. >for replying:
  1075. >Thanks folks.  Actually I was hoping for something a little
  1076. >more friendly than HEX editing and set mem'ing.  If anyone
  1077. >has anything to add to this scant list of tools, feel free.
  1078. >
  1079.  
  1080. I wrote an application called RSC_Viewer that lets you dump,
  1081. disassemble and modify any kind of resources.
  1082.  
  1083. There is a DEMO version at sumex, but in this version
  1084. the patch functionnality is disabled. Otherwise the
  1085. application is shareware.
  1086.  
  1087. The disassembler recognizes traps (even dispatch ones), symbols
  1088. if they are available, low memory global variables, etc (see
  1089. other features in the documentation).
  1090.  
  1091. You can of course modify the resources, and when the resources are
  1092. of executable types (eg CODE, XCMD, etc) you can use the built-in
  1093. ASSEMBLER instead of the dump mode.
  1094.  
  1095. You can also search for a specific trap or value in the resources.
  1096.  
  1097. The current version is 6.3 (full system 7 compatible with required
  1098. AppleEvents support and of course free bug :-)) [it is v6.2.2 at
  1099. Sumex (if I remember well)].
  1100.  
  1101.  
  1102. - -- 
  1103. Francois Menneteau ()   __|||||__   () "... I had their lives in my hands
  1104. ================== ()    /O   O\    () their fate their fortune in my visions
  1105. iron@imag.fr       ()    - .|. -    () No one believed in my true prophecy
  1106. ================== ()     \=^=/     () And now it's too late."  (Iron Maiden)
  1107.  
  1108. ---------------------------
  1109.  
  1110. From: sko@athena.mit.edu (Steve Ko)
  1111. Subject: Wanted: AppleTalk programming examples
  1112. Date: 1 Mar 92 11:11:34 GMT
  1113. Organization: Massachusetts Institute of Technology
  1114.  
  1115. Does anyone know where I can find some AppleTalk programming examples?
  1116. I'm writing a network game and am having trouble deciphering from IM
  1117. the "preferred" way of calling the AppleTalk routines.  In particular,
  1118. I'd like to see examples using NBP and ATP.  If anyone has suggestions
  1119. of useful texts (other than IM2,IM5,Inside AppleTalk) on this subject,
  1120. I'd greatly appreciate it if you could send me info about them.
  1121.  
  1122. You can e-mail me at sko@athena.mit.edu or simply post your reply to
  1123. the net.
  1124.  
  1125. Thanks very much for your help!
  1126.  
  1127.                     - Steve Ko
  1128.  
  1129.  
  1130.  
  1131. +++++++++++++++++++++++++++
  1132.  
  1133. Organization: Queen's University at Kingston
  1134. Date: Tuesday, 10 Mar 1992 23:01:36 EST
  1135. From: <CHARLESW@QUCDN.QueensU.CA>
  1136.  
  1137.   If you want to _use_ AppleTalk I'd suggest you skip Inside AppleTalk (it's
  1138. interesting, and detailed, but definitely not a "how to" book).  I do recommend
  1139. Michael Peirce's book "Programming with AppleTalk" (Addison-Wesley, $25 U.S.,
  1140. ISBN 0-201-57780-1).  I found it very readable.  Unlike other books in the
  1141. series, however, it is not available in a version bundled with a source code
  1142. disk.
  1143.  
  1144. .../dave    Dave Charlesworth
  1145.  
  1146. ---------------------------
  1147.  
  1148. End of C.S.M.P. Digest
  1149. **********************
  1150.